home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / text / ComponentView.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  4.4 KB  |  184 lines

  1. package javax.swing.text;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Dimension;
  6. import java.awt.Graphics;
  7. import java.awt.Rectangle;
  8. import java.awt.Shape;
  9. import javax.swing.SwingUtilities;
  10. import javax.swing.text.Position.Bias;
  11.  
  12. public class ComponentView extends View {
  13.    private Component createdC;
  14.    // $FF: renamed from: c java.awt.Component
  15.    private Component field_0;
  16.  
  17.    public ComponentView(Element var1) {
  18.       super(var1);
  19.    }
  20.  
  21.    // $FF: synthetic method
  22.    static Component access$0(ComponentView var0) {
  23.       return var0.field_0;
  24.    }
  25.  
  26.    protected Component createComponent() {
  27.       AttributeSet var1 = ((View)this).getElement().getAttributes();
  28.       Component var2 = StyleConstants.getComponent(var1);
  29.       return var2;
  30.    }
  31.  
  32.    public float getAlignment(int var1) {
  33.       if (this.field_0 != null) {
  34.          switch (var1) {
  35.             case 0:
  36.                return this.field_0.getAlignmentX();
  37.             case 1:
  38.                return this.field_0.getAlignmentY();
  39.          }
  40.       }
  41.  
  42.       return super.getAlignment(var1);
  43.    }
  44.  
  45.    public final Component getComponent() {
  46.       return this.createdC;
  47.    }
  48.  
  49.    public float getMaximumSpan(int var1) {
  50.       if (this.field_0 != null) {
  51.          Dimension var2 = this.field_0.getMaximumSize();
  52.          switch (var1) {
  53.             case 0:
  54.                return (float)var2.width;
  55.             case 1:
  56.                return (float)var2.height;
  57.             default:
  58.                throw new IllegalArgumentException("Invalid axis: " + var1);
  59.          }
  60.       } else {
  61.          return 0.0F;
  62.       }
  63.    }
  64.  
  65.    public float getMinimumSpan(int var1) {
  66.       if (this.field_0 != null) {
  67.          Dimension var2 = this.field_0.getMinimumSize();
  68.          switch (var1) {
  69.             case 0:
  70.                return (float)var2.width;
  71.             case 1:
  72.                return (float)var2.height;
  73.             default:
  74.                throw new IllegalArgumentException("Invalid axis: " + var1);
  75.          }
  76.       } else {
  77.          return 0.0F;
  78.       }
  79.    }
  80.  
  81.    public float getPreferredSpan(int var1) {
  82.       if (this.field_0 != null) {
  83.          Dimension var2 = this.field_0.getPreferredSize();
  84.          switch (var1) {
  85.             case 0:
  86.                return (float)var2.width;
  87.             case 1:
  88.                return (float)var2.height;
  89.             default:
  90.                throw new IllegalArgumentException("Invalid axis: " + var1);
  91.          }
  92.       } else {
  93.          return 0.0F;
  94.       }
  95.    }
  96.  
  97.    public Shape modelToView(int var1, Shape var2, Position.Bias var3) throws BadLocationException {
  98.       int var4 = ((View)this).getStartOffset();
  99.       int var5 = ((View)this).getEndOffset();
  100.       if (var1 >= var4 && var1 <= var5) {
  101.          Rectangle var6 = var2.getBounds();
  102.          if (var1 == var5) {
  103.             var6.x += var6.width;
  104.          }
  105.  
  106.          var6.width = 0;
  107.          return var6;
  108.       } else {
  109.          throw new BadLocationException(var1 + " not in range " + var4 + "," + var5, var1);
  110.       }
  111.    }
  112.  
  113.    public void paint(Graphics var1, Shape var2) {
  114.       if (this.field_0 != null) {
  115.          this.field_0.setBounds(var2.getBounds());
  116.          if (!this.field_0.isVisible()) {
  117.             this.field_0.setVisible(true);
  118.          }
  119.       }
  120.  
  121.    }
  122.  
  123.    void setComponentParent() {
  124.       View var1 = ((View)this).getParent();
  125.       if (var1 == null) {
  126.          if (this.field_0 != null) {
  127.             Container var2 = this.field_0.getParent();
  128.             if (var2 != null) {
  129.                var2.remove(this.field_0);
  130.             }
  131.          }
  132.       } else {
  133.          if (this.field_0 == null) {
  134.             Component var3 = this.createComponent();
  135.             if (var3 != null) {
  136.                this.createdC = var3;
  137.                this.field_0 = new Invalidator(this, var3);
  138.                this.field_0.setVisible(false);
  139.             }
  140.          }
  141.  
  142.          if (this.field_0 != null && this.field_0.getParent() == null) {
  143.             Container var4 = ((View)this).getContainer();
  144.             var4.add(this.field_0);
  145.          }
  146.       }
  147.  
  148.    }
  149.  
  150.    public void setParent(View var1) {
  151.       super.setParent(var1);
  152.       if (SwingUtilities.isEventDispatchThread()) {
  153.          this.setComponentParent();
  154.       } else {
  155.          1 var2 = new 1(this);
  156.          SwingUtilities.invokeLater(var2);
  157.       }
  158.  
  159.    }
  160.  
  161.    public void setSize(float var1, float var2) {
  162.       if (this.field_0 != null) {
  163.          if (SwingUtilities.isEventDispatchThread()) {
  164.             this.field_0.setSize((int)var1, (int)var2);
  165.          } else {
  166.             SafeResizer var3 = new SafeResizer(this, (int)var1, (int)var2);
  167.             SwingUtilities.invokeLater(var3);
  168.          }
  169.       }
  170.  
  171.    }
  172.  
  173.    public int viewToModel(float var1, float var2, Shape var3, Position.Bias[] var4) {
  174.       Rectangle var5 = (Rectangle)var3;
  175.       if (var1 < (float)(var5.x + var5.width / 2)) {
  176.          var4[0] = Bias.Forward;
  177.          return ((View)this).getStartOffset();
  178.       } else {
  179.          var4[0] = Bias.Backward;
  180.          return ((View)this).getEndOffset();
  181.       }
  182.    }
  183. }
  184.